package com.me.services;

import com.me.model.Item;
import com.me.model.User;

import java.lang.reflect.InvocationTargetException;
import java.util.Collection;

public interface IItemService<TUser, TItem> {
	void addItem(TItem item);
	
	void initial(TUser u);
	
	TItem getItem(int id);
	
	TItem getItemFromUser(TUser u, int itemId);
	
	Collection<TItem> getAll();
	
	Collection<TItem> getAllFromUser(TUser u);
	
	int getItemCount();
	
	void record(TUser user,TItem item, int chooseId);
	
	int getScore(TUser u);

	boolean delete(int id);

	boolean update(Item i);
}
